const request = require('../../utils/request.js');


class Controllers { 
    // 用户登陆
    login(params) {
        return request.post(`/app/login`, params, false).then(res => res.data)
    }
    // 配置信息接口
    info(params) { 
        return request.post(`/app/info`, params, false).then(res => res.data)
    }
    // 上传图片
    picture(file) {
        const formData = new FormData();
        formData.append('file', file);
        return request(`/upload/picture`, {
            method: 'post',
            data: formData
        }).then(res => res.data);
    }
    upImg(){
        return request.url + '/upload/picture'
    }
    // 获取用户信息 /user/info
    getUserInfo(params) {
        return request.get(`/user/info`, params).then(res => res.data)
    }

    // 修改用户头像，昵称  /user/updateInfo  参数portrait/nick
    updateInfo(params) {
        return request.post(`/user/updateInfo`, params).then(res => res.data)
    }

    // 收听历史、历史清单接口 /user/historyList 参数page 否,pageSize 否 
    historyList(params) {
        return request.post(`/user/historyList`, params).then(res => res.data)
    }

    // 我关注的人列表 /user/followList 参数page 否,pageSize 否 
    followList(params) {
        return request.post(`/user/followList`, params).then(res => res.data)
    }

    // 收藏列表 - 合辑 栏目 音频  /user/collectList 参数page 否,pageSize 否 
    myCollectList(params) {
        return request.post(`/user/collectList`, params).then(res => res.data)
    }

    // 下载列表 /user/downloadList 参数page 否,pageSize 否 
    downloadList(params) {
        return request.post(`/user/downloadList`, params).then(res => res.data)
    }

    //我的隐私设置--账号与安全 /user/privacy
    privacy(params) {
        return request.get(`/user/privacy`, params).then(res => res.data)
    }

    // 更新隐私设置 --账号与安全 /user/updatePrivacy
    updatePrivacy(params) {
        return request.post(`/user/updatePrivacy`, params).then(res => res.data)
    }

    // 新消息提醒 /user/notifySetting 
    notifySetting(params) {
        return request.get(`/user/notifySetting`, params).then(res => res.data)
    }

    // 更新新消息提醒 /user/updateNotifySetting
    updateNotifySetting(params) {
        return request.post(`/user/updateNotifySetting`, params).then(res => res.data)
    }

    // 我的评论列表 /user/myCommentList 参数page 否,pageSize 否 
    myCommentList(params) {
        return request.post(`/user/myCommentList`, params).then(res => res.data)
    }
    // 关联绑定卡号接口 /app/bind 参数cardNo 是 、password是
    bindCard(params) {
        return request.post(`/app/bind`, params).then(res => res.data)
    }


    // 用户点赞
    collect(params) {
        return request.post(`/action/collect`, params).then(res => res.data)
    }
    // 取消收藏,点赞(使用检测是否点赞收藏返回来的id)
    delCollect(params) {
        return request.post(`/action/delCollect`, params).then(res => res.data)
    }
    // 检测是否点赞收藏 /audio/checkCollect
    checkCollect(params) {
        return request.post(`/audio/checkCollect`, params).then(res => res.data)
    }
    // 下载
    download(params) {
        return request.post(`/action/download`, params).then(res => res.data)
    }
    // 取消下载
    delDownload(params) {
        return request.post(`/action/delDownload`, params).then(res => res.data)
    }
    // 关注
    follow(params) {
        return request.post(`/action/follow`, params).then(res => res.data)
    }
    // 取消关注
    delFollow(params) {
        return request.post(`/action/delFollow`, params).then(res => res.data)
    }
    // 移除历史音频
    removeHistory(params) {
        return request.post(`/action/removeHistory`, params).then(res => res.data)
    }
    // 评论
    comment(params) {
        return request.post(`/action/comment`, params).then(res => res.data)
    }
    // 更新收听时长
    uploadListenTimes(params) {
        return request.post(`/action/uploadListenTimes`, params).then(res => res.data)
    }
    // 签到
    sign(params) {
        return request.post(`/action/sign`, params).then(res => res.data)
    }

    // 栏目列表
    categoryList(params) {
        return request.post(`/audio/categoryList`, params, false).then(res => res.data)
    }
    // 合辑列表
    compilationList(params) {
        return request.post(`/audio/compilationList`, params, false).then(res => res.data)
    }
    // 音频列表
    audioList(params) {
        return request.post(`/audio/audioList`, params, false).then(res => res.data)
    }
    // 音频详情
    audioDetail(params) {
        return request.post(`/audio/audioDetail`, params, false).then(res => res.data)
    }
    // 合辑第一首音频详情
    firstAudioDetail(params) {
        return request.post(`/audio/firstAudioDetail`, params, false).then(res => res.data)
    }
    // 收藏列表 - 播放页面使用
    collectList(params) {
        return request.post(`/audio/collectList`, params).then(res => res.data)
    }
    // 评论列表
    commentList(params) {
        return request.post(`/audio/commentList`, params, false).then(res => res.data)
    }
    // 评论详情
    commentDetail(params) {
        return request.post(`/audio/commentDetail`, params, false).then(res => res.data)
    }
    // 合辑+栏目列表
    collectionList(params) {
        return request.post(`/audio/collectionList`, params, false).then(res => res.data)
    }

    // 排行榜
    rankPage(params) {
        return request.post(`/rank/rankPage`, params).then(res => res.data)
    }
    // 我的排行榜
    myRank(params) {
        return request.post(`/rank/myRank`, params).then(res => res.data)
    }
    // 达人榜搜索（搜索人）
    search(params) {
        return request.post(`/rank/search`, params).then(res => res.data)
    }

    // 分享背景图片 /app/shareImg  类型，1合辑 2栏目 3音频 4达人榜 5推荐听单，6历史听单，7我的收藏，8达人主页，9晒一晒，10小程序名片
    shareImg(params) {
        return request.post(`/app/shareImg`, params).then(res => res.data)
    }
    // 记录播放次数
    play(params){
        return request.post(`/audio/play`, params).then(res => res.data)
    }
    // 轮播图列表 参数source 1是首页，2是启动页广告，3首页中部广告
    bannerList(params) {
        return request.post(`/app/bannerList`, params,false).then(res => res.data)
    }
    // 签到列表
    signList(params){
        return request.post(`/app/signList`,params).then(res => res.data)
    }
    // 搜索关键词列表
    searchKeywordList(params){
        return request.post(`/app/searchKeywordList`, params,false).then(res => res.data)
    }
    // 互动列表
    userActionList(params){
        return request.post(`/rank/userActionList`, params).then(res => res.data)
    }
    // 取消收藏(播放页面收藏列表使用)
    delPlayCollect(params){
        return request.post(`/action/delPlayCollect`, params).then(res => res.data)
    }
    categoryDetail(params){
        return request.post(`/audio/categoryDetail`, params).then(res => res.data)
    }
    // 生成二维码/user/makeShareImg 
    makeShareImg(params){
        return request.post(`/user/makeShareImg`, params).then(res => res.data)
    }
    //获取手机号/app/updatePhoneNumber
    updatePhoneNumber(params){
        return request.post(`/app/updatePhoneNumber`, params).then(res => res.data)
    }
    // 合辑详情 参数compilationId 合辑id
    compilationDetail(params){
        return request.post(`/audio/compilationDetail`, params).then(res => res.data)
    }

    // 更新积分
    updateScore(params){
        return request.post(`/user/updateScore`, params,true,'GET',false).then(res => res.data)
    }

    // 生产图片
    makeShare(params){
        return request.post(`/user/makeShare`, params).then(res => res.data)
    }
}


const controllers = new Controllers()
/**
 * 暴露对象，无需每次都加函数名
 */
module.exports = {
    controller: controllers,
    baseUrl:request.url
}